GPUImage2

GPU — pixabay

GPU가 많이 알려진 것은 아무래도 게임 시장이 활발해 진 시점이 아닌가 싶습니다. 특별히 XBOX 에서 x86아키텍쳐를 가져가는데 CPU는 사양이 높지 않음에도 가정용 게임기로 손색없이 동작하던 1세대 혹은 2세대에서 피부에 다가 온 느낌입니다.

2016/04/19 Today’s Best (815★)

BradLarson/GPUImage2
_GPUImage2 - GPUImage 2 is a BSD-licensed Swift framework for GPU-accelerated video and image processing._github.com

GPUImage라는 프로젝트는 swift로 개발을 할 때에 GPU연산이 필요한 경우 사용하는 프레임워크 입니다.

자, 그러면 CPU와 GPU의 그래픽 연산 차이를 재미있게 풀어본 동영상을 살펴 볼까요?

최근의 CUDA같은 프레임워크는 GPU의 성능을 최대한 이끌어내 연산 자체를 GPU에서 풀어내고는 합니다.

원래 GPUImage는 Objective-C 기반의 라이브러리였으나 최근 업데이트에서 Swift로 모두 바꾸었다고 하는군요.

BradLarson/GPUImage
_GPUImage - An open source iOS framework for GPU-based image and video processing_github.com

Mac 이나 iOS 프로그램잉의 경우는 그저

import GPUImage

문법으로 사용할 수 있고, Linux의 경우는 라이브러리들을 추가해 줘야합니다.

sudo apt-get install libv4l-dev

sudo apt-get install libraspberrypi-dev

Filter 를 주고 사용하는 방법은 다음과 같습니다.

do {  
camera = try Camera(sessionPreset:AVCaptureSessionPreset640x480)  
filter = SaturationAdjustment()  
camera --\> filter --\> renderView  
camera.startCapture()  
} catch {  
fatalError("Could not initialize rendering pipeline: \\(error)")  
}

그 외 여러가지 옵션 및 OpenGL ES를 이용하는 방법들도 document에 자세히 기록되어 있습니다.

By Keen Dev on April 18, 2016.

Exported from Medium on May 31, 2017.